package com.hzw.saas.api.user;

import com.hzw.saas.api.ds.enums.ClientTypeEnum;
import com.hzw.saas.api.user.bo.DsUserAccountBo;
import com.hzw.saas.api.user.bo.UserProfileBO;

import java.util.List;

/**
 * <p>
 * 用户配置表 服务类
 * </p>
 *
 * @author sonam
 * @since 2020-12-21
 */
public interface IUserProfileService {

    List<UserProfileBO> getUserProfiles(List<String> userId);


    UserProfileBO add(UserProfileBO userProfileBO);

    /**
     * 根据用户id获取用户详情
     * @param userId 用户ID
     * @return 用户详情
     */
    UserProfileBO get(String userId);

    /**
     * 根据用户ID更新用户详情
     * @return true/false
     */
    boolean update(UserProfileBO userProfileBO);

    /**
     * ds定制用户信息
     *
     * @param userId     the user id
     * @param clientType the client type
     * @return the ds user account
     */
    DsUserAccountBo getDsUserAccount(String userId, ClientTypeEnum clientType);

}
